/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package servicios;

import bean.Empresa;
import bean.Entidad;
import bean.Usuario;
import interfaces.InterfazEntidad;
import java.util.ArrayList;
import resources.Data;

/**
 *
 * @author Stuk4
 */
public class ServicioEmpresa implements InterfazEntidad {

    public void registrar(Entidad ent) {
        if (ent != null) {
            Data.listaEmpresas.add((Empresa) ent);
        }
    }

    public void modifical(Entidad ent) {

        for (int i = 0; i < Data.listaEmpresas.size(); i++) {
            Empresa p = Data.listaEmpresas.get(i);
            if (p.getNroDocumento().equals(ent.getNroDocumento()) && p.getUsuarioAsociado().getEmail().equals(((Empresa) ent).getUsuarioAsociado().getEmail())) {
                Data.listaEmpresas.set(i, (Empresa) ent);
            }
        }
    }

    public void eliminar(Entidad ent) {
        Empresa persona = (Empresa) ent;        
        for (Empresa p : Data.listaEmpresas) {
            if (p.getNroDocumento().equals(persona.getNroDocumento())) {
                Data.listaEmpresas.remove(p);
                return;
            }
        }
    }

    public ArrayList listar(Usuario user) {
        
        ArrayList<Empresa> listaEmpresas = new ArrayList<Empresa>();
        for(Empresa empresa: Data.listaEmpresas){

            if(empresa.getUsuarioAsociado().getEmail().equals(user.getEmail())){
                listaEmpresas.add(empresa);
            }
        }
        
        return listaEmpresas;
        
    }

    public Entidad obtenerPorDoc(String doc, Usuario user) {
    
        for (Empresa emp : Data.listaEmpresas) {
            if (emp.getNroDocumento().equals(doc) && emp.getUsuarioAsociado().getEmail().equals(user.getEmail())){
                return emp;
            }
        }
        return null;
    }
}
